from flask import Blueprint, render_template, current_app, request, flash, redirect, url_for
from flask_login import login_required

# 创建蓝图
views = Blueprint('views', __name__)

# 模拟用户数据
mock_user = {
    'name': '管理员',
    'avatar': '/static/images/avatar.png',
    'role': 'admin'
}

@views.route('/')
@views.route('/index')
def index():
    """显示首页"""
    return render_template('index.html', title='舆情监控系统 - 首页', user=mock_user)

@views.route('/dashboard')
def dashboard():
    """显示舆情监控仪表板页面"""
    current_app.logger.info("用户访问仪表板页面")
    return render_template('dashboard.html', title='舆情监控系统 - 仪表盘', user=mock_user)

@views.route('/info-management')
def info_management():
    return render_template('info_management.html', title='舆情监控系统 - 信息管理', user=mock_user)

@views.route('/monitoring-plan')
def monitoring_plan():
    return render_template('monitoring_plan.html', title='舆情监控系统 - 监管方案', user=mock_user)

@views.route('/content-analysis')
def content_analysis():
    return render_template('content_analysis.html', title='舆情监控系统 - 内容分析', user=mock_user)

@views.route('/alert-management')
def alert_management():
    return render_template('alert_management.html', title='舆情监控系统 - 预警管理', user=mock_user)

@views.route('/event-analysis')
def event_analysis():
    return render_template('event_analysis.html', title='舆情监控系统 - 事件分析', user=mock_user)

# 添加缺少的路由
@views.route('/profile', methods=['GET', 'POST'])
@login_required
def profile():
    """个人设置页面"""
    if request.method == 'POST':
        # 处理表单提交
        # 这里添加保存个人信息的逻辑
        flash('个人信息已更新', 'success')
        return redirect(url_for('user_interface.profile'))
    return render_template('profile.html', title='舆情监控系统 - 个人信息', user=mock_user)

@views.route('/settings', methods=['GET', 'POST'])
@login_required
def settings():
    """系统设置页面"""
    if request.method == 'POST':
        # 处理表单提交
        # 这里添加保存设置的逻辑
        flash('系统设置已更新', 'success')
        return redirect(url_for('user_interface.settings'))
    return render_template('settings.html', title='舆情监控系统 - 系统设置', user=mock_user)

@views.route('/login')
def login():
    return render_template('login.html', title='舆情监控系统 - 登录') 